The present invention relates to highly efficient coding of moving pictures into a bitstream at a small code amount for efficient video data transfer, storage and displaying, such as, MPEG-coding with inter-picture predictive coding, conversion of coded-moving picture bitstream at a different transfer rate, and also multiplexing of several coded-moving picture bitstreams into one bitstream.
Pictures under MPEG-coding are divided into three different types I-, P- and B-pictures. I-pictures (intra-coded pictures) are coded independently, entirely without reference to other pictures. P-pictures (unidirectionally predictive-coded pictures) are compressed by coding the differences the pictures and reference preceding I- or P-pictures. B-pictures (bidirectionally predictive-coded pictures) are also compressed by coding the differences the pictures and reference preceding or upcoming I- or P-pictures.
A coded B-picture bitstream can be removed from a coded bitstream because B-pictures are not used as reference pictures.
A coded bitstream of 30 frames/second with P-pictures for every 3 frames, for example, can be converted into a bitstream of 10 frames/second by removing B-picture streams only. The 10-frame/sec bitstream has a low transfer bit (code) rate in accordance with the removed B-picture amount.
In detail, a moving picture bitstream is supplied to a decimator to remove B-picture bitstreams according to decimation control data. The B-picture-removed bitstream is supplied to a buffer intermittently for each period in which B-pictures have been removed. The buffer holds such an intermittent input and outputs a sequential bitstream at a low transfer bit rate in accordance with the removed B-picture amount.
Moving pictures reproduced from such an output bitstream however cannot move smoothly on screen due to decrease in frame rate of the reproduced pictures which is caused by B-picture removal without respect to movement of original moving pictures.
In digital broadcasting, moving picture bitstreams on several channels are multiplexed into one bitstream suitable for a transfer line. A transfer bit rate of the multiplexed bitstream is basically the total of the moving picture bitstreams of the several channels.
An amount of codes required for obtaining a desired reproduced picture quality varies according to portions (periods) of moving pictures in moving picture coding. A transfer bit rate is set at the maximum code amount if it is a fixed rate. Portions (periods) of moving pictures that require a high transfer bit rate vary according to channels for multiplexing in several channels. A fixed transfer bit rate at the maximum code amount after multiplexing thus becomes smaller than the total of the maximum code amounts at the channels.
The more the channels to be multiplexed, the smaller the fixed transfer bit rate after multiplexing. This tendency lowers a transfer bit rate on transfer line by multiplexing. Each channel, however, carries a bitstream at a variable transfer rate, thus requiring a rate control, which results in an overall rate control over the several channels.
Such an overall rate control is achieved by a quantization control for every channel based on buffer occupancy on a virtual buffer provided after multiplexing. A reference value, that is, a quantization scale factor on quantization step width based on the buffer occupancy is returned to an encoder for each channel.
In detail, moving picture inputs on several channels are coded by MPEG-encoders, respectively, to bitstreams. The bitstreams on the several channels are multiplexed by a multiplexer into one MPEG-2 transport stream (ST).
The multiplexed bitstream is supplied to a code amount observer having a virtual buffer that corresponds to a buffer of an MPEG-decoder. The code amount observer observes buffer occupancy on the virtual buffer by detecting a frame code amount of a bitstream stored in the virtual buffer at decoding timing. The more the each frame code amount, the less the buffer occupancy, in other words, the less the each frame code amount, the more the buffer occupancy.
Information on buffer occupancy (BO) is supplied by the code amount observer to a rate (quantization) controller. A reference value, that is, a quantization scale factor on quantization step width is output by the rate controller based on the BO information and returned to the MPEG-encoders for the several channel. The quantization scale factor is used for all MPEG-encoders. The less the buffer occupancy, the larger the quantization scale factor, in other words, the more the buffer occupancy, the smaller the quantization scale factor.
Each MPEG-encoder is controlled by the quantization scale factor on quantization step width. The finer the quantization, the larger the code amount generated by each MPEG-encoder, in other words, the more coarse the quantization, the smaller the code amount generated by the MPEG-encoder.
The feed-back control on quantization scale is performed to the total code amount for all channels to achieve stable quantization in which code amounts are large for some channels but small for the other channels to a constant total code amount.
When several MPEG-encoders are controlled in the same way, they generate a large amount of codes for pictures that, for example, move rapidly on screen, thus requiring a high transfer rate whereas a small amount of codes for pictures that, for example, move very slowly, thus requiring a low transfer rate. Codes are thus shifted from channels that require a low amount of codes to other that require a high amount of codes.
Such multiplexing as described above requires a variable transfer rate also on a transfer line connecting MPEG-encoders and a multiplexer with feed-back control of a quantization scale factor to the encoders.
This type of processing is performed with a unit containing both MPEG-encoders and a multiplexer for high-speed transfer therebetween. It is difficult to multiplex bitstreams that have been coded at and transferred from a remote station. Therefore, in a system having a central station and a remote station, video signals with no compression are transferred from the remote station to the central station in which the video signals are encoded and multiplexed.
As discussed, an overall control of generated codes is required at the MPEG-encoder side, which is thus difficult when encoders are located in several remote places. Moreover, such an overall code amount control is impossible when multiplexing bitstreams that have already been encoded at remote places.